var itemTools = {};
//保存的数据
itemTools.SaveTempItem = [];
var showItemsModule = {};
	//查询的接口与查询的字段
	showItemsModule.tqlBefore = '';
	//存放分页div的id
	showItemsModule.pageId = '';
	//存放商品div的id
	showItemsModule.itemShowId = '';
	//存放页面里全选按钮的id 有值就有全选功能 没值就不需要全选功能
	showItemsModule.checkboxAllId = '';
	//存放搜索按钮的id
	showItemsModule.searchButId = '';
	//存放关键字的div id
	showItemsModule.keyId = '';
	//每页多少数据
	showItemsModule.pageSize = 10;
	
//初始化数据
showItemsModule.initItems = function(S,P,tqlBefore,pageId,itemShowId,checkboxAllId,searchButId,keyId,pageSize){
	this.tqlBefore = tqlBefore;
	this.pageId = pageId;
	this.itemShowId = itemShowId;
	this.checkboxAllId = checkboxAllId;
	this.searchButId = searchButId;
	this.keyId = keyId;
	this.pageSize = pageSize;
	showItemsModule.search_item_function(S,P);
}
/*商品橱窗与上架 呈现控件
 */  
showItemsModule.search_item_function = function (S,P){
	var $ = S.all;
	var pagination = null;
    //显示商品
    TOP.api("tql", "get", {ql:""+showItemsModule.tqlBefore+" where q="+S.one('#'+showItemsModule.keyId).val(),session:TOP.cookie.get("session")},function(response) {
    	var totalPage = response.items_onsale_get_response.total_results;
        var content = S.one('#'+showItemsModule.itemShowId),
        pagination = new P({
        	container: '#'+showItemsModule.pageId,
            template: S.one('#default-pagination-tpl').html(),
            totalPage: Math.ceil(totalPage / showItemsModule.pageSize),
            callback: function(idx, pg, ready) {
        		TOP.api("tql", "get", {ql:""+showItemsModule.tqlBefore+" where page_size="+showItemsModule.pageSize+" and page_no=" + idx+" and q="+S.one('#'+showItemsModule.keyId).val(),session:TOP.cookie.get("session")},function(data) {
                    	var html = '';
                    	if(data.items_onsale_get_response.items.item.length>0){
                    		S.each(data.items_onsale_get_response.items.item,function(item, i) {
                            	item.has_showcase = item.has_showcase ? "已推荐": "未推荐";
                            	//是否是全选功能
                            	if(showItemsModule.checkboxAllId!=null&&showItemsModule.checkboxAllId!=""){
                            		//disabled="true"
                            		html += '<tr>'
 									   +    '<td style="padding-top: 20px;"><label style="margin-bottom: -3px;"><input type="checkbox" value="' + item.num_iid + '"/><div class="outer">'+ item.outer_id +'</div></label></td>'
 					                   +    '<td style="padding-top: 8px;">'
 					                   +        '<img src="'+item.pic_url+'_40x40.jpg" alt="'+item.title+'" width="40" height="40">'
 					                   +    '</td>'
 					                   +    '<td><a href="http://item.taobao.com/item.htm?id='+ item.num_iid +'" target="_blank">'+ item.title +'</a></td>'
 					                   +    '<td>'+item.price+'</td>'
 					                   +    '<td>'+item.num+'</td>'
 					                   +    '<td>'+item.delist_time+'</td>'
 					                   +    '<td>'+item.has_showcase+'</td>'
 					                   +    '<td><div class="ks-button ks-button-primary"  data="'+ item.num_iid +'" index="'+ i +'">添加</div></td>'
 					                   +'</tr>';
                            	}else{
                            		html += '<tr>'
 									   +    '<td style="padding-top: 20px;"><label style="margin-bottom: -3px;"><div class="outer">'+ item.outer_id +'</div></label></td>'
 					                   +    '<td style="padding-top: 8px;">'
 					                   +        '<img src="'+item.pic_url+'_40x40.jpg" alt="'+item.title+'" width="40" height="40">'
 					                   +    '</td>'
 					                   +    '<td><a href="http://item.taobao.com/item.htm?id='+ item.num_iid +'" target="_blank">'+ item.title +'</a></td>'
 					                   +    '<td>'+item.price+'</td>'
 					                   +    '<td>'+item.num+'</td>'
 					                   +    '<td>'+item.delist_time+'</td>'
 					                   +    '<td>'+item.has_showcase+'</td>'
 					                   +    '<td><div class="ks-button ks-button-primary" data="'+ item.num_iid +'" index="'+ i +'">添加</div></td>'
 					                   +'</tr>';
                            	}
                            });
                    	}
                    	content.removeClass('loading').html(html);
                        ready(idx);
                        //是否是全选功能
                    	if(showItemsModule.checkboxAllId!=null&&showItemsModule.checkboxAllId!=""){
                    		var flag = 0;
                    		var disflag = 0;
    						//TODO: 初始化数据  初始化数据考虑状态是否可编辑
                    		var list = $('#'+showItemsModule.itemShowId+' input');
            				for (var i = 0; i < itemTools.SaveTempItem.length; i++) {
                				for (var j = 0; j < list.length; j++) {
                					if(list[j].disabled){
                						disflag++;
                						list[j].checked = false;
                						break;
                					}
                					if (itemTools.SaveTempItem[i] == list[j].value) {
                						list[j].checked = true;
                        				flag++;
                        				break;
                   	 				}
                				}
            				}
            				//控制全选按钮
            				if(flag==(list.length-disflag)){
            					S.one('#'+showItemsModule.checkboxAllId).prop("checked",true);
        					}else{
        						S.one('#'+showItemsModule.checkboxAllId).prop("checked",false);
        					}
                            //反转控制
                		    S.all('#'+showItemsModule.itemShowId+' input').on('change',function(event) {
                		    	showItemsModule.funCheck(S,event.currentTarget);
                		    });
                    	}
                     });
                   }
        });
	});
    //是否是全选功能
	if(showItemsModule.checkboxAllId!=null&&showItemsModule.checkboxAllId!=""){
		//控制全选与反选
		S.one('#'+showItemsModule.checkboxAllId).on('click',function(event) {
			//$('#'+showItemsModule.itemShowId+' input').prop("checked", event.currentTarget.checked);
			//TODO: kissy是否能获取到状态是否可编辑属性
			var list = $('#'+showItemsModule.itemShowId+' input');
			//处理数据
		    for (var i = 0; i < list.length; i++) {
		    	if(list[i].disabled){
		    		list[i].checked = false;
		    	}else{
		    		list[i].checked = event.currentTarget.checked;
		    		showItemsModule.saveItemorRemveItem(event.currentTarget.checked, list[i].value);
		    	}
		    }
		});
	}
	//搜索
	S.one('#'+showItemsModule.searchButId).on('click',function(event){
    	showItemsModule.search_item_function(S,P);
    });
}
//选择数据保存与删除
showItemsModule.saveItemorRemveItem = function (b, id) {
	if (b) { //添加
		if (!showItemsModule.isHaved(id)) {
			showItemsModule.addItem(id);
		}
	} else { //删除
			if (showItemsModule.isHaved(id)) {
				showItemsModule.removeItem(id);
			}
	}
}
showItemsModule.JS_cruel_search = function(key)       /*JS暴虐查找*/
{
	if(itemTools.SaveTempItem.length>0){
		var re = new RegExp(key,[""])
		return (itemTools.SaveTempItem.toString().replace(re,"┢").replace(/[^,┢]/g,"")).indexOf("┢")
	}
}
//查找是否存在数据
showItemsModule.isHaved=function(id) {
	var result = showItemsModule.JS_cruel_search(id);
	if(result>-1){
		return true;
	}
	else{
		return false;
	}
	/*var flag = false;
  		for (var i = 0; i < itemTools.SaveTempItem.length; i++) {
  			if (itemTools.SaveTempItem[i] == id) {
  				flag = true;
				break;
			}
  		}
		return flag;*/
}
//添加数据
showItemsModule.addItem=function(id) {
	itemTools.SaveTempItem.push(id);
}
//删除数据
showItemsModule.removeItem=function(id) {
	var result = showItemsModule.JS_cruel_search(id);
	if(result>-1){
		itemTools.SaveTempItem.splice(result, 1);
	}
	/*for (var i = 0; i < itemTools.SaveTempItem.length; i++) {
		if (itemTools.SaveTempItem[i] == id) {
			itemTools.SaveTempItem.splice(i, 1);
		}
	}*/
}
showItemsModule.funCheck=function(S,obj) {
	var $ = S.all;
	var list = $('#'+showItemsModule.itemShowId+' input');
	var flag = true;
	for (var i = 0; i < list.length; i++) {
		if (!list[i].checked) {
			flag = false;
			break;
		}
	}
	showItemsModule.saveItemorRemveItem(obj.checked, obj.value);
	$('#'+showItemsModule.checkboxAllId).prop("checked", flag);
}